package com.example.exception;
import cn.hutool.log.Log;
import cn.hutool.log.LogFactory;
import com.example.common.Result;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

@ControllerAdvice("com.example.controller")//只要是在这个包下的方法异常，这里都能捕获到
public class GlobalExceptionHander {
//    将异常信息返回给前台，让前台知道
    private static final Log log= LogFactory.get();

@ExceptionHandler(Exception.class)//所有的异常都在这里
@ResponseBody//返回json串，这样才能返回前端
    public Result error(Exception e){
    log.error("异常信息",e);
        return Result.error();
    }

    @ExceptionHandler(CustomException.class)//自定义异常都在这里
    @ResponseBody//返回json串，这样才能返回前端
    public Result error(CustomException e){
//        log.error("异常信息",e);
        return Result.error(e.getCode(),e.getMsg());
    }
}
